package com.ybbase.framework.mapper.system;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.ybbase.framework.model.po.system.User;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 系统用户表 Mapper 接口
 * </p>
 *
 * @author cg
 * @since 2019-11-26
 */
public interface UserMapper extends BaseMapper<User> {

    /**
     * 根据机构获取用户数据
     *
     * @param
     * @return
     * @author cg
     * @date 2020-01-11 12:04
     * @since cloud2.0
     */
    List<User> getUserListByOrgId(String organId);

    /**
     * 根据流程编码和节点编码获取审核人的用户数据
     *
     * @param
     * @return
     * @author cg
     * @date 2020-01-11 23:08
     * @since cloud2.0
     */
    List<User> getUserByNodeConfig(@Param("userIds") String[] userIds);

    /**
     * 根据角色ID获取下面所有的用户
     *
     * @param pageIndex
     * @param step
     * @param id
     * @return
     * @date 2020年3月2日12:23:10
     * @author phm
     */
    IPage<User> getUserByRoleId(IPage<User> page, QueryWrapper<User> queryWrapper, @Param("id")Integer[] id,@Param("name") String name);
}
